package com.demo.iodemo;

import java.io.File;
import java.io.IOException;

public class FileDemo1 {

    public static void main(String[] args) {
        method2("D:\\development\\Code\\eclipseworkspace\\learn-java", "");
//		method1();
    }

    /**
     * 循环path路径下的所有文件，每一级以“--”符号分割
     */
    public static void method2(String path, String space) {
        File file = new File(path);

        System.out.println(space + file.getName());

        if (file.isDirectory()) {
            for (File tempFile : file.listFiles()) {
                method2(tempFile.getPath(), space + "--");
            }
        }
    }

    /**
     * 创建文件夹和文件
     */
    public static void method1() {
        File file = new File("d:\\demo");
        // .exists() 方法 首先查询目录是不是存在
        if (!file.exists()) {
            // file.mkdir是创建一级目录，file.mkdirs是创建多级目录
            file.mkdir();// 如果目录不存在我们就创建这个目录
        }
//        else {
//            file.delete();//删除文件/文件夹
//        }

        // 是否是一个目录
        System.out.println("file是不是目录" + file.isDirectory());
        // 是否是一个文件 如果不存在或者不是文件返回false
        System.out.println("file是不是文件" + file.isFile());

        // File file2 = new File("d:\\demo\\test.txt");
        File file2 = new File("d:\\demo", "test.txt");
        if (!file2.exists()) {
            // .createNewFile()创建文件
            try {
                file2.createNewFile();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        System.out.println(file);//file.toString()的内容
        System.out.println("file路径:" + file.getAbsolutePath());
        System.out.println("目录名称" + file.getName());
        System.out.println("文件名称：" + file2.getName());
        System.out.println("file.getParent()：" + file.getParent());//目录路径
        System.out.println("file2.getParent()：" + file2.getParent());//文件路径
    }

}
